function id(x) { return x }
function f(n) { return n <= 1 ? 1 : n * f(n-1) }
function g(n) { return n <= 1 ? 1 : n*n + g(n-1) }
print(id(f)(3) + id(g)(4));

// prints '32' with 'repl' (k:0), prints '36' with k >> 0
// also problem with nssetup: null gets merged with object address for 'solver': store merging from branch with incomp stack